Conceito: Gerência de configuração do software
Estabeleça um sistema de gerência de configuração para a configuração do seu software
Relacionamentos
Descrição Principal

O sistema de controle de versões é responsável por armazenar as diversas versões dos itens de configuração e assegurar que as modificações sobre esses itens ocorram de forma segura e controlada. Desta forma, está no âmbito desse sistema a definição de políticas de controle de acesso (autenticação, autorização e auditoria), políticas de controle de concorrência, por exemplo, pessimista, otimista, híbrida etc., e procedimentos que viabilizem a definição de níveis de controle diferenciados para os itens de configuração, por exemplo, pré e pós baseline.

O principal objetivo para se gerenciar a configuração do software é fornecer mecanismos para: manter uma estrutura de pastas com controle de acesso e manuseio; armazenar e recuperar itens em suas diversas versões, de forma a preservar e atualizar seu conteúdo; gerenciar múltiplos níveis de controle de configuração; compartilhar e transferir itens entre os níveis de controle estabelecidos; manter registros sobre a manipulação destes itens; gerar relatórios gerenciais que possibilitem fazer um balanço da configuração existente (ou seja, contabilizar a situação da configuração). Além disso, um aspecto importante é a definição de uma estratégia que permita desenvolvimento em paralelo sobre uma base única de programas fontes, como, por exemplo, o gerenciamento de branches.

Para cada item de configuração, são usualmente definidos: um identificador único; o nível de controle pretendido, por exemplo, apenas armazenar no repositório, também controlar a versão e ainda incluir em baseline; o momento de se aplicar este controle; um responsável. Diferentes níveis de controle podem ser apropriados para diferentes produtos de trabalho em diferentes momentos do projeto, bem como um mesmo item de configuração pode possuir diferentes níveis de controle ao longo do projeto. A gerência de configuração se aplica tanto para os produtos de trabalho dos projetos quanto para os produtos de trabalho organizacionais, em nível técnico, por exemplo, especificação de requisitos, projetos de arquitetura, código; gerencial, por exemplo, planos, laudos, controles; e de processos, por exemplo, padrões, procedimentos, guias, templates.

Fonte 828 IEEE Standard for Configuration Management in Systems and Software Engineering, 2012.